The First Update to HCWCALC.EXE to create HCWCLCR1.EXE is small, but important:

The testing of small AP bullets, such as the 30-caliber and 50-caliber M2 AP 
bullets, requires that the input weights be accurate to up to 5 decimal places
to allow the very small weights of the penetrator cores to be input.  For
example, the 30-caliber M2 AP core only weighs 0.00572 lb, so the inputs being
limited to 3 decimal places doesn't allow the correct weight to be entered.

This first update, dated 11 August 2012, modifies the program to allow such
small values if the total weight of the projectile is under 1 pound, otherwise
the 3-decimal-place-maximum rule applies.

I also added the decapping plate thickness for Hoods or AP Caps to output.

------------------------------------------------------------------------------
The Second Update to HCWCLCR1.EXE to create HCWCLCR2.EXE is:

1)  Deleted variable "CPLOS", which was not used, since decapping & cap shatter
logic replaced it.
2)  Changed text about the thickness of plate needed to decap a Krupp APC/SAPC
projectile that used a super-strong high-temperature solder:  The homogeneous
iron/steel (any kind) plate needed to knock off their caps is now 0.23-caliber
thick at any obliquity.  The U.S. Army extra-strong solder used by a few APC
projectile manufacturers is unchanged at 0.1605 caliber, while most U.S. Army &
all U.S. Navy capped AP/SAP shells that used solder (WWI & after) still require
only a plate of 0.0805-caliber thickness at any obliquity.
3) Fixed a type in variable "CAPNMBR" that interfered with the selection of one
or the other of the two types of AP caps now in the program.

------------------------------------------------------------------------------
The Third Update to HCWCLCR2.EXE to create HCWCLCR3.EXE is:

1)  R2 Main File logic to computer Obliquity Angle Multiplier M' if Ob > 45deg
simply capped the T/D value at 0.899, since the effects were constant for all
plate thickness 0.9 caliber or more in thickness.  However, for large thickness
plates, the difference between 0.899 and 0.9 was enough to create a noticeable
step when Ob passed over its 2.5-degree steps in its index, so I eliminated any
step at 0.9 caliber or greater by setting T/D(Max for this Calc) = 0.9 and then
forcing indices T1 = 17 (0.85-caliber) and T2 = 1 (use next, 0.9 caliber value).

------------------------------------------------------------------------------
The Fourth Update to HCWCLCR3.EXE to create HCWCLCR4.EXE is:

1)  Fixed logic for reducing 'PENWT' if an AP Cap is used and it shatters 
('CAPSHAT'=1).  Erroneous code had 'CAPSHAT' weight correction prior to checking
for a shattered cap.  This is now fixed with a Cap+Windscreen (if any) PENWT mod
subroutine called *AFTER* CAPSHAT is set to 1, replacing any prior PENWT changes
(loss of Cap also automatically causes loss of windscreen).
2)  Corrected printout note about when a Windscreen, Hood, and AP Cap will
penetrate an iron or steel plate along with the projectile and when it will not
(PENWT <> WT).
3)  Added note that against soft materials like Mild Steel or Wrought Iron, even
a "soft/tough" steel AP Cap (hardness of circa 225 BHN/RC 20-21) can cut a notch
in the plate face and act like it is a "hard" Cap, so when computing results of
soft/tough-capped projectile against such plates, consider it hard and answer
the 'Soft/Tough (Under 350 BHN max)" question with an 'N" for "NO".
>>NOTE: PENWT is used to compute post-impact Residual Velocity & Exit Angle.<<

------------------------------------------------------------------------------
The Fifth Update to HCWCLCR4.EXE to create HCWCLCR5.EXE is:

1)  Fixed bug in the HOOD and WINDSCREEN effects computations where the value of
the quantity "OBDIF" used to interpolate between the tabulated entries when the
obliquity is between tabulated values (the table is in 5-deg increments) was not
giving the correct value, making the results incorrect.  This did not effect any
other results, though it obviously made the final NBL values that used this wrong.
This was shown to me by a user, as I did not do enough testing (:-<).  Fixed.
2)  The Percent Elongation linear extrapolation logic was not working when huge
projectiles like the 38" 11,985-lb British Tallboy SAP bombs were inserted with
values of under 15% Elongation.  As I had the 8-15" Krupp penetration curves from
G.Kdos. 100 to base this on, my linear extrapolation was obviously a simplified
estimate and does not work that far away from the known data.  I did some tests
and the reasonable limits seem to be 18" maximum diameter in this computation (as
far from the last 15" data point as should be attempted) and a 15% Elongation
minimum, not 10%.  When you go below 15%, the material is becoming hard & brittle
and the ductile behavior assumed in HCWCALC is highly unlikely.  Also, as the
projectiles get very large, the effects of the stacked 2"/50mm tensile test samples
that is large for a limited length above 4" (where the splitting of the steel before
the metal has stretched its full maximum length of 25% begins to have an effect)
will get less and less varied as the projectiles become larger and the plates begin
to stretch by a single value no matter how large the shell diameter gets above that, 
meaning that the effect flattens out above some large projectile size.  So this is
why I chose 18" as the flattening-out value.  Actual testing is needed to get the
true limits of this effect, but I must limit the effects to realistic estimates.  I
had to make such limits in my modifications for thin-faced HARVEY armor in my face-
hardened armor program FACEHARD, as just extrapoltaing the data gives obviously
incorrect results beyond a certain range about the known data.  A user showed me
this HCWCLCR4 problem, which I had not thought of before.
3)  Ensured that if "ANOTHER RUN?" is answered "Y" for "YES" that all of the prior
modifications to the M79 NBL are zeroed out for new computations.  One or two were
not being zeroed if set by a prior run and sometimes caused errors in later runs.
4)  Deleted lots of extra characters, such as "REM" instead of the identical "'"
input for REMARKS and using one subroutine call for similar repeated code, to 
reduce the length of the modules.

------------------------------------------------------------------------------
The Sixth Update to HCWCLCR5.EXE to create HCWCLCR6.EXE is:

1)  When I fixed the Percent Elongation logic for too large and too small values (see
Revision 5 NOTES above), I created a new variable "DPE" to use istead of "D" to put the
maximum 18" value in.  However, due to blindness, I failed to set it to D for ANY
OTHER value of D, which broke the calculations completely for this input.  I have fixed
the code so DPE is set to 8 on startup (its minimum value, giving zero effect) and 
otherwise setting it to D unless D goes over 18, where the current logic limits it, or
under 8, where it again is limited to 8 minimum.  This is a classic bug... 

--Nathan Okun